.loading {
    width: 280px;
    height: 40px;
    margin: 0 auto;
    text-align: center;
    margin-top: 100px;
}

.loading .logo span {
    display: inline-block;
    width: 10px;
    margin: 0 6px;
    height: 100%;
    border-radius: 4px;
    background: lightgreen;
    animation: load 1s ease infinite;
}

.loading .info span {
    display: inline-block;
    position: relative;
    width: 25px;
    margin: 0 2px;
    height: 100%;
    animation: word 2s ease-in-out infinite alternate;
}

@keyframes load {

    0%,
    100% {
        height: 40px;
        background: lightgreen;
    }

    50% {
        height: 70px;
        margin: -15px 0;
        background: lightblue;
    }
}

@keyframes word {

    0% {
        transform: translateY(0px);
    }

    50% {
        transform: translateY(10px);
    }

    100% {
        transform: translateY(-10px);
    }
}

.loading span:nth-child(2) {
    animation-delay: 0.2s;
}

.loading span:nth-child(3) {
    animation-delay: 0.4s;
}

.loading span:nth-child(4) {
    animation-delay: 0.6s;
}

.loading span:nth-child(5) {
    animation-delay: 0.8s;
}

.loading h1 {
    margin-top: 50px;
}

.loading .info span {
    font-size: 20px;
    font-weight: bold;
    margin-left: 10px;
    color: #333;
    text-shadow: 2px 1px 3px #888;
}